package dbTools.tableInfo.field.fieldValidator;

import java.util.List;

import dbTools.tableInfo.field.Field;
import dbTools.tableInfo.field.fieldValidator.message.Message;
import dbTools.tableInfo.field.fieldValidator.param.FieldParm;

public abstract class FieldValidator {

	/** type config  */
	public static final String DATA_FIELD="sn_date";
	public static final String DATA_RANGE_SN="sn_dateRange";
	public static final String DATA_RANGE="date";
	public static final String EMAIL="email";
	public static final String FAX="sn_fax";
	public static final String HALF_NUMERIC="sn_halfNumeric";
	public static final String HALF_STRING="sn_halfString";
	public static final String MOBILE="sn_mobile";
	public static final String NOT_HALF_HIRAKANA="sn_notHalfHirakana";
	public static final String NOT_HALF_KATAKANA="sn_notHalfKatakana";
	public static final String NOT_HALF_STRING="sn_notHalfString";
	public static final String REQUIRED_DEPEND="sn_requiredDepend";
	public static final String REQUIRED_STRING="requiredstring";
	public static final String REQUIRED="required";
	public static final String SHORT_REQUIRED="sn_shortRequired";
	public static final String SORT_MSG="sn_sortMsg";
	public static final String STRING_BYTE="sn_stringbyte";
	public static final String STRING_LENGTH="stringlength";
	public static final String TELEPHONE="sn_telephone";
	public static final String URL="url";
	
	protected String type;
	
	protected List<FieldParm> parms;
	
	protected Message msg;

	public abstract void initParms(Field field);
	
	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}

	public List<FieldParm> getParms() {
		return parms;
	}

	public void setParms(List<FieldParm> parms) {
		this.parms = parms;
	}

	public Message getMsg() {
		return msg;
	}

	public void setMsg(Message msg) {
		this.msg = msg;
	}
	
	
}
